Inline Destination Definitions

Output destinations normally live in per-user, per-machine deploy preferences, which means a job checked into version control needs every machine seeded with the same destination names. To make jobs self-contained, both job kinds can carry the definition of a named destination inline. Destinations are still referenced by name, so retargeting stays a one-place edit.

In a .waj, add a DeploySettings element as a child of Job; in a .wacj, add it inside Destination:

<Destination name="ProductionSite">
  <DeploySettings>
    <DeploySetting Name="ProductionSite" Action="s3">
      <Configuration Value="s3://docs-bucket/product" Region="us-east-1"
                     Distribution="E2EXAMPLE" />
    </DeploySetting>
  </DeploySettings>
</Destination>

An inline definition takes precedence over a deploy preference with the same name, the log records which source resolved the name, and a warning is issued when an inline definition shadows a differing preference. When a composition builds its members, it forwards its inline definitions to each member build automatically, so name-only member jobs run on a machine with no seeding at all. The --deploysettings command-line option accepts the same definitions from a file for build servers.

Note: Only Folder and Amazon S3 destinations can be defined inline — neither stores a secret.

Last modified date: 07/11/2026